package utils.node;

/**
 * 使用双向链表实现队列
 * @param <T>
 */
public class Queue<T> {
    // 初始化一个双向链表
    private DoubleEndsQueue<T> queue;
    public Queue(){
        queue = new DoubleEndsQueue<>();
    }

    /**
     * 放进队列
     * @param value
     */
    public void push(T value){
        queue.addFromHead(value);
    }

    /**
     * 从队列中取出
     * @return
     */
    public T poll(){
        return queue.popFromBottom();
    }

    /**
     * 判断是否为空
     * @return
     */
    public boolean isEmpty(){
        return queue.isEmpty();
    }
}
